package io.github.loan.investor.service;

import java.util.List;
import java.util.Map;

import com.alibaba.fastjson.JSONObject;

import io.github.loan.common.util.PageInfoUtil;
import io.github.loan.investor.pojo.Bank;
import io.github.loan.investor.pojo.Grant;
import io.github.loan.investor.pojo.Investor;
import io.github.loan.investor.pojo.InvestorBank;
import io.github.loan.investor.pojo.InvestorGrant;

public interface IInvestorService {
	/*****授权操作开始******/
	/**
	 * 查询多条记录
	 */
	List<Grant> findGrantCondListService(PageInfoUtil pageInfoUtil,Map<String,Object> condMap);
	
	/**
	 * 查询一条记录
	 */
	Grant findOneGrantService(Map<String,Object> condMap);
	
	/**
	 * 添加一条记录
	 */
	JSONObject insertOneGrantService(Grant grant);
	
	/**
	 * 更新一条记录
	 */
	JSONObject updateOneGrantService(Grant grant);
	
	/**
	 * 删除一条记录
	 */
	JSONObject deleteOneGrantService(Grant grant);
	/*****授权操作结束******/
	
	/*******出资方操作开始***********/
	List<Investor> findInvestorCondListService(PageInfoUtil pageInfoUtil,Map<String,Object> condMap);
	
	/**
	 * 查询一条记录
	 */
	Investor findOneInvestorService(Map<String,Object> condMap);
	
	/**
	 * 添加一条记录
	 */
	JSONObject insertOneInvestorService(Investor investor);
	
	/**
	 * 更新一条记录
	 */
	JSONObject updateOneInvestorService(Investor investor,Map<String,Object> condMap);
	
	/**
	 * 删除一条记录
	 */
	JSONObject deleteOneInvestorService(Investor investor);
	/*******出资方操作结束***********/
	
	/*****出资方授权操作开始******/
	List<InvestorGrant> findInvestorGrantCondListService(PageInfoUtil pageInfoUtil,Map<String,Object> condMap);
	
	/**
	 * 查询一条记录
	 */
	InvestorGrant findOneInvestorGrantService(Map<String,Object> condMap);
	
	/**
	 * 添加一条记录
	 */
	JSONObject insertOneInvestorGrantService(InvestorGrant investorGrant);
	
	/**
	 * 更新一条记录
	 */
	JSONObject updateOneInvestorGrantService(InvestorGrant investorGrant);
	
	/**
	 * 删除一条记录
	 */
	JSONObject deleteOneInvestorGrantService(InvestorGrant investorGrant);
	/*****出资方授权操作结束******/
	
	/* ---- 出资方银行操作开始 ---- */
	List<InvestorBank> findInvestorBankCondListService(PageInfoUtil pageInfoUtil,Map<String,Object> condMap);
	
	/**
	 * 查询一条记录
	 */
	InvestorBank findOneInvestorBankService(Map<String,Object> condMap);
	
	/**
	 * 添加一条记录
	 */
	JSONObject insertOneInvestorBankService(InvestorBank investorBank);
	
	/**
	 * 更新一条记录
	 */
	JSONObject updateOneInvestorBankService(InvestorBank investorBank);
	
	/**
	 * 删除一条记录
	 */
	JSONObject deleteOneInvestorBankService(InvestorBank investorBank);
	/* ---- 出资方银行操作结束 ---- */
	
	/* ---- 银行操作开始 ---- */
	List<Bank> findBankCondListService(PageInfoUtil pageInfoUtil,Map<String,Object> condMap);
	
	/**
	 * 查询一条记录
	 */
	Bank findOneBankService(Map<String,Object> condMap);
	
	/**
	 * 添加一条记录
	 */
	JSONObject insertOneBankService(Bank bank);
	
	/**
	 * 更新一条记录
	 */
	JSONObject updateOneBankService(Bank bank);
	
	/**
	 * 删除一条记录
	 */
	JSONObject deleteOneBankService(Bank bank);
	/* ---- 银行操作结束 ---- */
	
}
